package com.biz.primus.product.vo;

import com.biz.primus.base.enums.PromotionChannelEnum;
import com.biz.primus.base.enums.SearchChannel;
import com.biz.primus.base.global.GlobalValue;
import com.biz.primus.base.global.Ref;
import com.biz.primus.base.vo.IPromotionReqVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * @author jiangnan
 * @Description:
 */
@Data
@ApiModel("订单或购物车请求vo")
public class OrderProductReqVo implements Serializable,IPromotionReqVo {

    @ApiModelProperty("商品编码")
    private List<String> productCode;

    @ApiModelProperty("门店编码")
    private String depotCode;

    @ApiModelProperty("门店经度")
    private BigDecimal depotLongitude;

    @ApiModelProperty("门店纬度")
    private BigDecimal depotLatitude;

    @ApiModelProperty("用户经度")
    private BigDecimal userLongitude;

    @ApiModelProperty("用户纬度")
    private BigDecimal userLatitude;

    @ApiModelProperty("门店Id")
    private Long shopId;

    @ApiModelProperty("促销活动渠道")
    private PromotionChannelEnum appChannel;

    @ApiModelProperty("搜索渠道")
    private SearchChannel searchChannel;

    @ApiModelProperty("城市Id")
    @Ref(GlobalValue.cityId)
    private Long cityId;

    @ApiModelProperty("不用传递 区域Id")
    private Long zoneId;

    @ApiModelProperty("省Id")
    @Ref(GlobalValue.provinceId)
    private Long provinceId;

    @ApiModelProperty("用户Id")
    @Ref(GlobalValue.memberId)
    private Long memberId;


    @Override
    public Boolean getUserFirstOrder() {
        return Boolean.FALSE;
    }
}
